<?php

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/**
 * Description of Producto
 *
 * @author Jose Tejada
 */
class ProductoBean extends EntityBean {

    private $m_iIdProducto;
    private $m_marcaBean;
    private $m_categoriaBean;
    private $m_proveedorBean;
    private $m_sNombre;
    private $m_sDescripcion;
    private $m_dCosto;
    private $m_tsFechaRegistro;
    private $m_iStock;
    private $m_iActivo;
    private $m_aoTodos;

    function __construct( $iIdProducto = 0, MarcaBean $marcaBean = NULL, CategoriaBean $categoriaBean = NULL, ProveedorBean $proveedorBean = NULL, $sNombre = "", $sDescripcion = ""
    , $dCosto = 0.0, $tsFechaRegistro = NULL, $iStock = 0, $iActivo = 0 ) {
        $this->m_iIdProducto = $iIdProducto;
        $this->m_marcaBean = $marcaBean;
        $this->m_categoriaBean = $categoriaBean;
        $this->m_proveedorBean = $proveedorBean;
        $this->m_sNombre = $sNombre;
        $this->m_sDescripcion = $sDescripcion;
        $this->m_dCosto = $dCosto;
        $this->m_tsFechaRegistro = $tsFechaRegistro;
        $this->m_iStock = $iStock;
        $this->m_iActivo = $iActivo;
    }

    public static function returnBasicJSONString( ProductoBean $producto ) {
        $iIdMarca     = $producto->getMarcaBean() != NULL 
                      ? $producto->getMarcaBean()->getIdMarca() 
                      : NO_DETERMINADO_ID;
        $iIdCategoria = $producto->getCategoriaBean() != NULL 
                      ? $producto->getCategoriaBean()->getIdCategoria() 
                      : NO_DETERMINADO_ID;
        $iIdProveedor = $producto->getProveedorBean() != NULL 
                      ? $producto->getProveedorBean()->getIdProveedor() 
                      : NO_DETERMINADO_ID;

        $sJsonProd = "{";
        $sJsonProd .= "\"iIdProducto\":\"" . $producto->getIdProducto() . "\",";
        $sJsonProd .= "\"iMarca\":\"" . $iIdMarca . "\",";
        $sJsonProd .= "\"iCategoria\":\"" . $iIdCategoria . "\",";
        $sJsonProd .= "\"iProveedor\":\"" . $iIdProveedor . "\",";
        $sJsonProd .= "\"sNombre\":\"" . $producto->getNombre() . "\",";
        $sJsonProd .= "\"sDescripcion\":\"" . $producto->getDescripcion() . "\",";
        $sJsonProd .= "\"dCosto\":\"" . $producto->getCosto() . "\",";
        $sJsonProd .= "\"tsFechaRegistro\":\"" . $producto->getFechaRegistro() . "\"";
        $sJsonProd .= "\"iStock\":\"" . $producto->getStock() . "\"";
        $sJsonProd .= "}";
        return $sJsonProd;
    }

    public function getIdProducto() {
        return $this->m_iIdProducto;
    }

    public function setIdProducto( $iIdProducto ) {
        $this->m_iIdProducto = $iIdProducto;
    }

    public function getMarcaBean() {
        return $this->m_marcaBean;
    }

    public function setMarcaBean( MarcaBean $marcaBean ) {
        $this->m_marcaBean = $marcaBean;
    }

    public function getCategoriaBean() {
        return $this->m_categoriaBean;
    }

    public function setCategoriaBean( CategoriaBean $categoriaBean ) {
        $this->m_categoriaBean = $categoriaBean;
    }

    public function getProveedorBean() {
        return $this->m_proveedorBean;
    }

    public function setProveedorBean( ProveedorBean $proveedorBean ) {
        $this->m_proveedorBean = $proveedorBean;
    }

    public function getNombre() {
        return $this->m_sNombre;
    }

    public function setNombre( $sNombre ) {
        $this->m_sNombre = $sNombre;
    }

    public function getDescripcion() {
        return $this->m_sDescripcion;
    }

    public function setDescripcion( $sDescripcion ) {
        $this->m_sDescripcion = $sDescripcion;
    }

    public function getCosto() {
        return $this->m_dCosto;
    }

    public function setCosto( $dCosto ) {
        $this->m_dCosto = $dCosto;
    }

    public function getFechaRegistro() {
        return $this->m_tsFechaRegistro;
    }

    public function setFechaRegistro( $tsFechaRegistro ) {
        $this->m_tsFechaRegistro = $tsFechaRegistro;
    }

    public function getStock() {
        return $this->m_iStock;
    }

    public function setStock( $iStock ) {
        $this->m_iStock = $iStock;
    }

    public function getActivo() {
        return $this->m_iActivo;
    }

    public function setActivo( $iActivo ) {
        $this->m_iActivo = $iActivo;
    }

    public function getTodosValores() {
        $this->m_aoTodos = Array(
            $this->m_iIdProducto,
            $this->m_marcaBean->getIdMarca(),
            $this->m_categoriaBean->getIdCategoria(),
            $this->m_proveedorBean->getIdProveedor(),
            $this->m_sNombre,
            $this->m_sDescripcion,
            $this->m_dCosto,
            $this->m_tsFechaRegistro,
            $this->m_iStock,
            $this->m_iActivo
        );
        return $this->m_aoTodos;
    }

}

?>
